package com.softtown.modules.sys.service;

import com.github.pagehelper.PageInfo;
import com.softtown.common.service.BaseService;
import com.softtown.common.utils.Result;
import com.softtown.modules.sys.dto.SysMessageDTO;
import com.softtown.modules.sys.dto.SysMessageUnreadDTO;
import com.softtown.modules.sys.entity.SysMessageEntity;
import com.softtown.modules.sys.vo.SysMessageNoReadVO;

import java.util.List;

public interface SysMessageService extends BaseService<SysMessageEntity> {

    /**
    * 获取信息列表信息
    * @param sysMessageDTO
    * @return List<SysMessageVO>
    * @author Dingyayong
    * @date 2019-07-10 10:26
    */
    PageInfo getMessageList(SysMessageDTO sysMessageDTO);

    /**
     * 删除消息
     * @param messageId
     * @return List<SysMessageVO>
     * @author Dingyayong
     * @date 2019-07-10 10:26
     */
    Result deleteMessage (Long messageId);

    /**
     * 标识已读
     * @param id
     * @return List<SysMessageVO>
     * @author Dingyayong
     * @date 2019-07-10 10:26
     */
    Result updateReadMessage (Long id);

    /**
     * 标识未读
     * @param sysMessageUnreadDTO 未读DTO
     * @return List<SysMessageVO>
     * @author Dingyayong
     * @date 2019-07-10 10:26
     */
    Result updateNotReadMessage (SysMessageUnreadDTO sysMessageUnreadDTO);

    /**
    * 获取查看的信息
    * @param
    * @return
    * @author Dingyayong
    * @date 2019-07-10 20:03
    */
    List<SysMessageNoReadVO> queryNoReadMessage ();
}
